Existing print frameworks typically employ a printer driver architecture that converts a high-level page description language to a raster image that is suitable for printing by a destination printer. Such a printer driver architecture often requires intimate knowledge of a single page description language and a printer control language. Unfortunately, such a printer driver architecture also requires more resources then are available in many resource-limited platforms that suffer from a lack of printing capability. For example, in the Microsoft Windows environment, Graphic Device Interface (GDI) commands are often converted to a Printer Control Language such as PCL3 or other such language to send print output to printers. This causes resource intensive rendering to occur in the rendering platform. A resource-limited platform may not be able to perform such rendering tasks.
This printing approach also has other drawbacks. For example, to print according to a printer driver architecture, the user must use a printer driver that is specific to the platform and the printer. This can be problematic where a printer is available to print to, but the needed printer driver is unavailable. Another drawback is that the driver consumes a lot of computer processing power and memory resources.